#!/usr/bin/env bun

import { JsonToPptConverter } from '../../../../src/tools/convert/ppt/json-to-ppt.js';
import { PptTemplateManager } from '../../../../src/tools/convert/ppt/template.js';

async function testPPTGeneration() {
  console.log('🚀 开始PPT生成本地测试...');
  
  // 设置环境变量启用调试日志
  process.env.LOG_LEVEL = 'debug';
  
  try {
    // 1. 测试模板加载
    console.log('\n📁 测试模板加载...');
    const templateManager = new PptTemplateManager();
    const template = await templateManager.loadTemplate('year-end-tech');
    console.log('✅ 模板加载成功:', template.name);
    console.log('🎨 模板样式:', template.styles);
    console.log('🔧 处理后的背景颜色:', template.styles?.backgroundColor?.replace('#', ''));
    
    // 2. 创建转换器
    const converter = new JsonToPptConverter();
    
    // 3. 准备测试数据
    const testData = [
      {
        "date": "2024年12月",
        "department": "技术研发部",
        "presenter": "张三",
        "subtitle": "技术创新 · 价值创造",
        "year": "2024"
      },
      {
        "contents": [
          "1. 年度目标达成情况",
          "2. 核心项目成果展示", 
          "3. 关键数据指标分析",
          "4. 挑战与突破总结",
          "5. 能力成长与学习",
          "6. 2025年规划展望"
        ]
      }
    ];
    
    // 4. 生成PPT
    console.log('\n🎯 开始生成PPT...');
    const result = await converter.convertToPpt({
      data: testData,
      templateName: 'year-end-tech',
      outputPath: '/Users/ahata/Downloads/test-tech-ppt-debug.pptx',
      options: {
        author: '张三',
        includePageNumbers: true,
        size: 'widescreen',
        theme: 'modern',
        title: '2024年度述职报告（调试版）'
      }
    });
    
    console.log('✅ PPT生成成功:', result);
    
  } catch (error) {
    console.error('❌ PPT生成失败:', error);
    console.error(error instanceof Error ? error.stack : String(error));
  }
}

if (import.meta.main) {
  testPPTGeneration();
}
